Gustavo Jacoinde's profile

Resolviendo Problemas de Estabilidad en E-commerce

Informe de diagnóstico y solución para caídas recurrentes en e-commerce.
Información del proyecto
Realizó: Jacoinde Argüello Gustavo ​​​​​​​
Cargo: Ingeniero en la nube en Droplet de Digital Ocean - En remoto
Empresa: DIB -CARPET & HOME-
Ubicación de la empresa: Ciudad de  México.

Requerimiento.
Debido a caídas recurrentes del sitio web en el droplet de DigitalOcean, se me asignó la tarea de realizar una exhaustiva revisión para identificar las causas subyacentes de estos problemas y desarrollar una solución efectiva.

Objetivo
Restablecer rápidamente la estabilidad y la disponibilidad del e-commerce para asegurar una experiencia óptima para los usuarios y reducir al mínimo las interrupciones del servicio en el futuro.

Después de acceder al sistema, realicé tareas de diagnóstico y mantenimiento para abordar y resolver la situación.
Los droplets de DigitalOcean son máquinas virtuales (VM) basadas en Linux que se ejecutan sobre hardware virtualizado. Cada droplet creado representa un nuevo servidor que puede utilizarse de manera independiente o integrado dentro de una infraestructura en la nube más amplia.
I. Descripción del Droplet:
4 GB Memory
2 AMD vCPUs
84 GB Disk
NYC3 - Ubuntu 20.04 (LTS) x64
II. Evaluación de la capacidad actual del disco de almacenamiento en uso:
Espacio Total del Disco: 84 GB
Espacio Utilizado: 83 GB
Espacio Libre: 504M

Como podemos observar en la imagen la capacidad del disco virtual de almacenamineto está al 100% de su capacidad.
¿Qué pasa cuando el disco de almacenamiento de una máquina virtual alcanza el 100% de su capacidad en un e-commerce? 
Cuando el disco de almacenamiento de un droplet alcanza el 100% de su capacidad en un entorno de comercio electrónico (e-commerce), las consecuencias pueden ser especialmente críticas debido a la naturaleza transaccional y en tiempo real de este tipo de sitios web. Debido a esto pueden surgir varios efectos negativos, tales como:

1.Detención del sitio: Si el disco está lleno, el droplet puede detenerse por completo o experimentar fallas graves en los servicios relacionados con el e-commerce, como el servidor web, la base de datos o los sistemas de pago. Esto significa que el sitio dejará de estar disponible para los usuarios, lo que resultará en una pérdida inmediata de ventas y clientes potenciales.

2.Errores en transacciones: Las transacciones en curso, como compras de clientes, procesos de pago y actualizaciones de inventario, pueden fallar debido a la falta de espacio en disco para completar operaciones críticas. Esto puede generar errores en el sitio, transacciones incompletas o duplicadas, y afectar la integridad de los datos de ventas y de inventario.

3.Rendimiento degradado: Incluso antes de que el sitio se detenga por completo, el llenado del disco puede causar una degradación significativa del rendimiento. Las páginas pueden cargar lentamente, las consultas a la base de datos pueden demorarse y las funciones del carrito de compras pueden fallar, lo que resulta en una experiencia deficiente para los usuarios.

4.Pérdida de datos críticos: Si el sistema no puede escribir datos debido a la falta de espacio en disco, existe el riesgo de pérdida o corrupción de datos críticos para el funcionamiento del e-commerce, como registros de pedidos, información de clientes o detalles de productos.
Para abordar esta situación, se recomiendan las siguientes acciones. No obstante, es crucial realizar un análisis exhaustivo para evitar gastos innecesarios.
1.Limpieza de archivos temporales: Se deben eliminar archivos temporales y de caché innecesarios que ocupen espacio en disco, pero que no sean esenciales para el funcionamiento tanto del sitio web como del sistema operativo.

2.Optimización de bases de datos: Es necesario realizar una limpieza y optimización de la base de datos para eliminar datos obsoletos, realizar defragmentación y mejorar el rendimiento general.

3.Redimensionamiento del disco: Si el espacio en disco es insuficiente, se debe considerar redimensionar el disco del droplet para aumentar su capacidad de almacenamiento.

4.Auditoría de archivos y directorios: Revisar y eliminar archivos duplicados, grandes o no utilizados que puedan estar consumiendo espacio innecesario en el disco.
Se debe liberar espacio en el disco virtual eliminando archivos innecesarios, ampliando el tamaño del disco si es posible o migrando datos a otro almacenamiento externo. 

5.Monitoreo continuo: Se deben implementar herramientas de monitoreo para supervisar el uso del disco y recibir alertas cuando se acerque al límite de capacidad, permitiendo una acción preventiva.
Es importante monitorear regularmente el uso del disco para prevenir que vuelva a alcanzar su capacidad máxima.

6.Optimización de imágenes y archivos multimedia: Se recomienda Comprimir imágenes y optimizar archivos multimedia para reducir su tamaño y el espacio que ocupan en disco sin comprometer la calidad.
III. Análisis de uso de almacenamiento: Llevé a cabo una revisión detallada del uso del espacio en disco para identificar con precisión qué archivos o directorios están ocupando la mayor cantidad de espacio. 

Esta revisión minuciosa me permite no solo identificar los elementos que más espacio consumen, sino también evaluar su relevancia para el funcionamiento del sistema.

De esta manera, puedo tomar decisiones informadas sobre qué archivos o directorios eliminar, optimizar o trasladar a otro almacenamiento para liberar espacio de manera eficiente y mantener el sistema en óptimas condiciones de rendimiento
Causa
Como se muestra en la imagen, la carpeta /srv está ocupando la mayor cantidad de espacio en disco 68GB y esto se debe a una configuración incorrecta de un plugin específico encargado de realizar copias de seguridad completas de todos los archivos del sitio web, incluyendo la base de datos, temas, plugins y archivos de medios.

Cuando los plugins se configuran de manera incorrecta, pueden surgir problemas relacionados con el consumo excesivo de espacio en disco.

En este caso, la configuración errónea provocó que las copias de seguridad se realizarán con demasiada frecuencia y que se incluyeran archivos innecesarios en ellas, lo que generó un uso desproporcionado del espacio en disco. Además, la falta de configuración para retener copias de seguridad antiguas contribuyó a la acumulación de archivos de respaldo innecesarios.
​​​​​​​
Primeros 10 resultados en orden Ascendente
Parte del contenido de la carpeta
Últimos 10 resultados
Solución
Esta vez, evité la necesidad de redimensionar el droplet para aumentar su capacidad de almacenamiento al identificar con precisión la causa de la saturación del disco y comprender el motivo detrás de esta situación.

Mi enfoque para resolver este problema fue liberar espacio en el disco virtual mediante la eliminación de archivos innecesarios. Esta acción no soló resolvió la saturación actual del disco, sino que también previno gastos adicionales relacionados con la expansión del almacenamiento o la contratación de servicios externos.

Además de eliminar archivos, realicé una revisión minuciosa de archivos temporales, registros y otros datos prescindibles para el sistema. Esta práctica optimizó el uso del espacio en disco y mejoró el rendimiento general del sistema, asegurando una experiencia óptima para los usuarios y reduciendo futuras interrupciones del servicio.
Recomendación
Para prevenir estos inconvenientes en un entorno de e-commerce, resulta fundamental establecer estrategias de monitoreo constante del espacio en disco. Esto implica configurar alertas que notifiquen sobre niveles críticos de uso de almacenamiento y tomar acciones preventivas, como realizar limpiezas regulares de archivos temporales, optimizar bases de datos y ajustar el escalado de recursos de almacenamiento según sea necesario. Además, contar con un plan de contingencia sólido es clave para responder de manera rápida y eficiente en caso de que se alcance el límite de capacidad del disco, asegurando así la continuidad y eficacia de las operaciones del e-commerce.
Resolviendo Problemas de Estabilidad en E-commerce
Published:

Resolviendo Problemas de Estabilidad en E-commerce

Published:

Creative Fields